package com.spic.business.accident.interevents.management.domain;

import java.math.BigDecimal;
import java.util.List;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.spic.common.core.annotation.Excel;
import com.spic.common.core.web.domain.BaseEntity;

/**
 * 内部事件管理对象 internal_incident_report
 * 
 * @author 任翔
 * @date 2021-12-01
 */
public class InternalIncidentReport extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** id 主键 */
    private Integer id;

    /** 公司 */
    private String company;

    /** 责任单位 */
    @Excel(name = "责任单位")
    private String dutyDept;

    /** 事故类型 */
    @Excel(name = "事故类型")
    private String accidentType;

    /** 事件编号 */
    @Excel(name = "事件编号")
    private String eventNumber;

    /** 事件类型 */
    private String eventType;

    /** 事件年份 */
    private String eventYear;

    /** 机组编码 */
    private String crewNumber;

    /** 序号 */
    private String serialNumber;

    /** 填报时间 */
    private Date reportTime;

    /** 事件名称 */
    @Excel(name = "事件名称")
    private String eventName;

    /** 事件过程 */
    private String eventProcess;

    /** 直接原因 */
    private String immediateCause;

    /** 根本原因 */
    private String rootCause;

    /** 运行影响 */
    private String runningEffect;

    /** 经济损失 */
    private BigDecimal economicLosses;

    /** 暴露问题 */
    private String exposedProblems;

    /** 采购措施 */
    private String procurementPractices;

    /** 结论 */
    private String conclusion;

    /** 其他情况说明 */
    private String presentationCondition;

    /** 生技部结论意见 */
    private String opinionsProductionTechnology;

    /** HSE意见 */
    private String opinionsHse;

    /** 事故调查组结论 */
    private String conclusionInvestigation;

    /** 状态 */
    @Excel(name = "状态")
    private String eventStatus;

    /** 下发时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "下发时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date downTime;

    /** 上报时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "上报时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date upTime;

    /** 说明 */
    private String instructions;

    /** 附件地址 */
    private String fileUrl;

    /** 备注 */
    private String remrk;

    /** 事件落实人员信息 */
    private List<InternalEventsImplementationPersonnel> internalEventsImplementationPersonnelList;

    public void setId(Integer id) 
    {
        this.id = id;
    }

    public Integer getId() 
    {
        return id;
    }
    public void setCompany(String company) 
    {
        this.company = company;
    }

    public String getCompany() 
    {
        return company;
    }
    public void setDutyDept(String dutyDept) 
    {
        this.dutyDept = dutyDept;
    }

    public String getDutyDept() 
    {
        return dutyDept;
    }
    public void setAccidentType(String accidentType) 
    {
        this.accidentType = accidentType;
    }

    public String getAccidentType() 
    {
        return accidentType;
    }
    public void setEventNumber(String eventNumber) 
    {
        this.eventNumber = eventNumber;
    }

    public String getEventNumber() 
    {
        return eventNumber;
    }
    public void setEventType(String eventType) 
    {
        this.eventType = eventType;
    }

    public String getEventType() 
    {
        return eventType;
    }
    public void setEventYear(String eventYear) 
    {
        this.eventYear = eventYear;
    }

    public String getEventYear() 
    {
        return eventYear;
    }
    public void setCrewNumber(String crewNumber) 
    {
        this.crewNumber = crewNumber;
    }

    public String getCrewNumber() 
    {
        return crewNumber;
    }
    public void setSerialNumber(String serialNumber) 
    {
        this.serialNumber = serialNumber;
    }

    public String getSerialNumber() 
    {
        return serialNumber;
    }
    public void setReportTime(Date reportTime) 
    {
        this.reportTime = reportTime;
    }

    public Date getReportTime() 
    {
        return reportTime;
    }
    public void setEventName(String eventName) 
    {
        this.eventName = eventName;
    }

    public String getEventName() 
    {
        return eventName;
    }
    public void setEventProcess(String eventProcess) 
    {
        this.eventProcess = eventProcess;
    }

    public String getEventProcess() 
    {
        return eventProcess;
    }
    public void setImmediateCause(String immediateCause) 
    {
        this.immediateCause = immediateCause;
    }

    public String getImmediateCause() 
    {
        return immediateCause;
    }
    public void setRootCause(String rootCause) 
    {
        this.rootCause = rootCause;
    }

    public String getRootCause() 
    {
        return rootCause;
    }
    public void setRunningEffect(String runningEffect) 
    {
        this.runningEffect = runningEffect;
    }

    public String getRunningEffect() 
    {
        return runningEffect;
    }
    public void setEconomicLosses(BigDecimal economicLosses) 
    {
        this.economicLosses = economicLosses;
    }

    public BigDecimal getEconomicLosses() 
    {
        return economicLosses;
    }
    public void setExposedProblems(String exposedProblems) 
    {
        this.exposedProblems = exposedProblems;
    }

    public String getExposedProblems() 
    {
        return exposedProblems;
    }
    public void setProcurementPractices(String procurementPractices) 
    {
        this.procurementPractices = procurementPractices;
    }

    public String getProcurementPractices() 
    {
        return procurementPractices;
    }
    public void setConclusion(String conclusion) 
    {
        this.conclusion = conclusion;
    }

    public String getConclusion() 
    {
        return conclusion;
    }
    public void setPresentationCondition(String presentationCondition) 
    {
        this.presentationCondition = presentationCondition;
    }

    public String getPresentationCondition() 
    {
        return presentationCondition;
    }
    public void setOpinionsProductionTechnology(String opinionsProductionTechnology) 
    {
        this.opinionsProductionTechnology = opinionsProductionTechnology;
    }

    public String getOpinionsProductionTechnology() 
    {
        return opinionsProductionTechnology;
    }
    public void setOpinionsHse(String opinionsHse) 
    {
        this.opinionsHse = opinionsHse;
    }

    public String getOpinionsHse() 
    {
        return opinionsHse;
    }
    public void setConclusionInvestigation(String conclusionInvestigation) 
    {
        this.conclusionInvestigation = conclusionInvestigation;
    }

    public String getConclusionInvestigation() 
    {
        return conclusionInvestigation;
    }
    public void setEventStatus(String eventStatus) 
    {
        this.eventStatus = eventStatus;
    }

    public String getEventStatus() 
    {
        return eventStatus;
    }
    public void setDownTime(Date downTime) 
    {
        this.downTime = downTime;
    }

    public Date getDownTime() 
    {
        return downTime;
    }
    public void setUpTime(Date upTime) 
    {
        this.upTime = upTime;
    }

    public Date getUpTime() 
    {
        return upTime;
    }
    public void setInstructions(String instructions) 
    {
        this.instructions = instructions;
    }

    public String getInstructions() 
    {
        return instructions;
    }
    public void setFileUrl(String fileUrl) 
    {
        this.fileUrl = fileUrl;
    }

    public String getFileUrl() 
    {
        return fileUrl;
    }
    public void setRemrk(String remrk) 
    {
        this.remrk = remrk;
    }

    public String getRemrk() 
    {
        return remrk;
    }

    public List<InternalEventsImplementationPersonnel> getInternalEventsImplementationPersonnelList()
    {
        return internalEventsImplementationPersonnelList;
    }

    public void setInternalEventsImplementationPersonnelList(List<InternalEventsImplementationPersonnel> internalEventsImplementationPersonnelList)
    {
        this.internalEventsImplementationPersonnelList = internalEventsImplementationPersonnelList;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("company", getCompany())
            .append("dutyDept", getDutyDept())
            .append("accidentType", getAccidentType())
            .append("eventNumber", getEventNumber())
            .append("eventType", getEventType())
            .append("eventYear", getEventYear())
            .append("crewNumber", getCrewNumber())
            .append("serialNumber", getSerialNumber())
            .append("reportTime", getReportTime())
            .append("eventName", getEventName())
            .append("eventProcess", getEventProcess())
            .append("immediateCause", getImmediateCause())
            .append("rootCause", getRootCause())
            .append("runningEffect", getRunningEffect())
            .append("economicLosses", getEconomicLosses())
            .append("exposedProblems", getExposedProblems())
            .append("procurementPractices", getProcurementPractices())
            .append("conclusion", getConclusion())
            .append("presentationCondition", getPresentationCondition())
            .append("opinionsProductionTechnology", getOpinionsProductionTechnology())
            .append("opinionsHse", getOpinionsHse())
            .append("conclusionInvestigation", getConclusionInvestigation())
            .append("eventStatus", getEventStatus())
            .append("downTime", getDownTime())
            .append("upTime", getUpTime())
            .append("instructions", getInstructions())
            .append("fileUrl", getFileUrl())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remrk", getRemrk())
            .append("internalEventsImplementationPersonnelList", getInternalEventsImplementationPersonnelList())
            .toString();
    }
}
